#ifndef BULLET_H
#define BULLET_H

#include "Tag.h"
#include "unit.h"
#include <cstdint>

enum BulletMoveType{
    //正在移动
    MOVING = 0,
    //到达目标
    MOVED_GOAL = 1,
    //未知错误
    ERROR = 2
};

class Bullet{
    private:
    protected:
    Location loc;
    uint32_t index;

    public:
    Bullet();

    //子弹移动函数,返回当前子弹状态,详情请看enum BulletMoveType
    virtual BulletMoveType move() = 0;

    //子弹到达目的地爆炸
    virtual void blast() = 0;

    virtual ~Bullet();
};

#endif
